package com.example.servicemodule

import android.os.Parcel
import android.os.Parcelable
import android.util.Log

data class Student(val id:Int,val name:String?,val price:Double)
    :Parcelable {
    private val TAG = "Student"
    constructor(parcel: Parcel) : this(
            parcel.readInt(),
            parcel.readString(),
            parcel.readDouble()) {
    }


    override fun writeToParcel(parcel: Parcel, flags: Int) {
        Log.e(TAG, "writeToParcel: 打包" )
        parcel.writeInt(id)
        parcel.writeString(name)
        parcel.writeDouble(price)
    }

    override fun describeContents(): Int {
        return 0
    }

    companion object CREATOR : Parcelable.Creator<Student> {
        /**
         * 读取包中的数据并封装成参数
         */
        override fun createFromParcel(parcel: Parcel): Student {
            return Student(parcel)
        }

        override fun newArray(size: Int): Array<Student?> {
            return arrayOfNulls(size)
        }
    }
}